package com.whosly.action.log.annotation;

import com.whosly.action.log.registrar.AutoActionConfigRegistrar;
import org.slf4j.event.Level;
import org.springframework.context.annotation.Import;

import java.lang.annotation.*;

/**
 * 用户请求采集
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@Import(AutoActionConfigRegistrar.class)
public @interface EnableAutoAction {
    /**
     * 是否开启用户请求采集, true 开启， false 关闭
     */
    boolean enabled() default true;

    /**
     * 日志级别
     */
    Level level() default Level.INFO;

    /**
     * 是否打印入参。 true 打印入参， false 不打印入参。 全局配置生效且方法配置生效，则打印。
     */
    boolean printlnReqParam() default false;

    /**
     * 是否打印回参。 true 打印回参， false 不打印回参。 全局配置生效且方法配置生效，则打印。
     */
    boolean printlnReturnParam() default false;

}
